package com.atung.merchant.service;

import com.atung.merchant.result.ApiResult;
import com.atung.merchant.vo.*;
import com.atung.merchant.vo.query.QueryMenuListRequest;
import com.atung.merchant.vo.query.QueryMenuTypeRequest;
import com.atung.merchant.vo.save.SaveMenuRequest;
import com.atung.merchant.vo.save.SaveMenuTypeRequest;
import com.atung.merchant.vo.save.SaveOrderMenuRequest;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.List;

/**
 * @author Administrator
 */
public interface MenuService {
    List<MealMenuTypeResponse> getMealMenuTypeService(QueryMenuTypeRequest request);

    MenuInfoListResponse getOrderMenuListService(QueryMenuListRequest request);

    ApiResult saveMenuOrderService(SaveOrderMenuRequest request);

    ApiResult cancelMenuOrderService(IdRequest request);

    List<MenuInfoResponse> getMealOrderMenuDetailsList(QueryMenuListRequest request);

    ApiResult servingMenuOrderService(IdRequest request);

    Long saveMenuTypeService(SaveMenuTypeRequest saveMenuTypeRequest);

    ApiResult deleteMenuTypeService(IdRequest idRequest);

    ApiResult deleteMenuService(IdRequest idRequest);

    Long saveMenuService(SaveMenuRequest saveMenuRequest);

    /**
     * 导入
     * @param saveMenuRequest
     * @return
     */
    ApiResult importExcelMenuService(MultipartFile file) throws IOException;

    /**
     *
     * @return
     */
    List<ServingMenuOrderResponse> servingMenuOrderListService(Long id);

    ServingMenuOrderResponse servingMenuOrderDetailsService(Long id);
}
